#!/bin/bash
# 这个文件是因为git不能提交超过100M大小的文件，所以在第一次提交的时候需要注意
# 用这个命令筛选出来

# 实际逻辑处理
# 传进来的第一个参数是文件夹或文件
# 第二个参数文件或文件夹的大小
function file_threshold_logical(){
	# 罗列出文件夹下所有子文件 默认已经忽略.git文件夹的
	if ! [ -d $1 ] && [ $2 -ge 100 ] ;then
		# 仅仅处理文件
		echo "$1 $2m"
	fi
}

export -f file_threshold_logical;

# 检测参数的对错
# 传进来三个个参数
# 第一个是参数的个数
# 第二个是文件夹的路径
# 第三个是大小
function validate_function_args(){
	if [ $1 -eq 2 ];then
		# 前者必须是文件夹
		if [ -d $2 ]; then
			du --exclude=.git* -am $2 | awk -F" " '{dir=$2;size=$1;system("file_threshold_logical "dir" "size) }';
		else
			echo "第一个参数必须是文件夹";
			exit 1;
		fi	
	else
		echo "错误的参数个数 $# 必须是两个 前者是要统计的文件夹，后者为文件大小";
		exit 1;
	fi

}






validate_function_args $# $1 $2;

